perm filename ARROW.SAI[PNT,HE] blob
sn#326356 filedate 1978-01-05 generic text, type C, neo UTF8
COMMENT ⊗ VALID 00002 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00002 00002 ENTRY
C00005 ENDMK
C⊗;
ENTRY;
BEGIN
REQUIRE "MACROS.SAI[PNT,HE]" SOURCE_FILE;
EXTERNAL INTEGER $ARROW;
EXTERNAL INTEGER ∂DLMAR;
EXTERNAL SIMPLE PROCEDURE DRAWLINE(INTEGER X0,Y0,X1,Y1);
! draws an arrow drawing lines between the 7 points (1 to 7). The dimensions
of the arrow and the names of the variables used are
. 80 . 20 .
c3y ..................3.....................
. |\ . 10
c12y 1 ________________2| \ .................
| . \ .
c4y | . \4 20
| . /.
|__________________ /................
c67y 7. 6| / . 10
c5y ..................|/....................
. 5 .
. . .
c17x c2356x c4x ;
INTERNAL SIMPLE PROCEDURE ARROW;
BEGIN ! $ARROW is the arrow position;
INTEGER C17X,C2356X,C4X,C12Y,C3Y,C5Y,C67Y,I;
C17X←∂DLMAR-25;
C2356X←C17X+80;
C4X←C2356X+20;
C3Y←$ARROW-20;
C5Y←$ARROW+20;
C12Y←$ARROW-10;
C67Y←$ARROW+10;
DRAWLINE(C17X,C12Y,C2356X,C12Y);
DRAWLINE(C2356X,C12Y,C2356X,C3Y);
DRAWLINE(C2356X,C3Y,C4X,$ARROW);
DRAWLINE(C4X,$ARROW,C2356X,C5Y);
DRAWLINE(C2356X,C5Y,C2356X,C67Y);
DRAWLINE(C17X,C67Y,C2356X,C67Y);
DRAWLINE(C17X,C12Y,C17X,C67Y);
FOR I←C17X STEP 2 UNTIL C2356X DO
DRAWLINE(I,C12Y,I,C67Y);
FOR I←C2356X STEP 2 UNTIL C4X DO
DRAWLINE(I,C3Y+(I-C2356X),I,C5Y-(I-C2356X));
END;
END;